Se declara a variável na função recebendo null ou outro valor.
Na função se declara primeiro, os parâmetros que são obrigatórios. Eles não tem um valor padrão e por isso devem ser informado na função ou irá acusar erros.
Depois vem os parâmetros facultativos que já tem um valor predeterminado. Se for informado um novo valor, a informação é substituída se não usa o que já está informado.
Por exemplo: public funcao(valorObrigatorio,variavel = null){//Poderia ser outro valor no lugar de null //Aqui pode ser utilizados métodos para //conferir e tratar se a variável foi recebida ou não. }
Isso serve para várias linguagens de programação já testado em javascript, python e PHP, cada uma com sua sintaxe na declaração dos elementos.